Select prvni kladnych hodnot, pak zapornych
Otázka od: Bohac Frantisek
18. 6. 2004 11:36
Dobry den,
potreboval bych, v selectu v databazi Accessu udelat to, aby mi vyjely prvni
hodnoty kladne vzestupne a pak zaporne:
10
40
55
70
80
-2
-14
-25
Jde to nejak udelat pres SQL? Slo by to vice dotazy, ale nevim, jak je
zaroven zobrazit v gridu...
Nakopnete me nekdo?
Dekuji.
S pozdravem
Frantisek Bohac
Odpovedá: Petr Langer
18. 6. 2004 11:26
SELECT hodnota FROM tabulka WHERE hodnota >= 0 ORDER BY hodnota
UNION ALL
SELECT hodnota FROM tabulka WHERE hodnota < 0 ORDER BY hodnota DESC
HTH,
Petr Langer
----- Original Message -----
From: "Bohac Frantisek" <bohacf@vnol.cz>
Subject: Select prvni kladnych hodnot, pak zapornych
> Dobry den,
>
> potreboval bych, v selectu v databazi Accessu udelat to, aby mi vyjely
prvni
> hodnoty kladne vzestupne a pak zaporne:
>
> 10
> 40
> 55
> 70
> 80
> -2
> -14
> -25
>
> Jde to nejak udelat pres SQL? Slo by to vice dotazy, ale nevim, jak je
> zaroven zobrazit v gridu...
>
> Nakopnete me nekdo?
>
> Dekuji.
> S pozdravem
>
> Frantisek Bohac
Odpovedá: Jaromir Cermak
18. 6. 2004 11:28
V MSSQL jde pousit (select ...)union (select ...) oba musi mit stejne sloupce
Jaromir Cermak
-----Original Message-----
From: Bohac Frantisek [mailto:bohacf@vnol.cz]
Sent: Friday, June 18, 2004 11:54 AM
Dobry den,
potreboval bych, v selectu v databazi Accessu udelat to, aby mi vyjely prvni
hodnoty kladne vzestupne a pak zaporne:
Odpovedá: Lstiburek Pavel
18. 6. 2004 11:38
No myslim si toto nebude pracovat klauzule ORDER by se,
vztahuje vzdy na cely resultset. On ji Access si dovoli
pouzit dvakrat, ale zabere pouze ta druha.
Lepsi bude asi vyraz s IIF(..)
Pavel
> From: Petr Langer [mailto:langer@xdom.cz]
> SELECT hodnota FROM tabulka WHERE hodnota >= 0 ORDER BY hodnota
> UNION ALL
> SELECT hodnota FROM tabulka WHERE hodnota < 0 ORDER BY hodnota DESC
>
> HTH,
> Petr Langer
>
> ----- Original Message -----
> From: "Bohac Frantisek" <bohacf@vnol.cz>
> Subject: Select prvni kladnych hodnot, pak zapornych
>
>
> > Dobry den,
> >
> > potreboval bych, v selectu v databazi Accessu udelat to,
> aby mi vyjely
> prvni
> > hodnoty kladne vzestupne a pak zaporne:
> >
> > 10
> > 40
> > 55
> > 70
> > 80
> > -2
> > -14
> > -25
> >
> > Jde to nejak udelat pres SQL? Slo by to vice dotazy, ale
> nevim, jak je
> > zaroven zobrazit v gridu...
> >
> > Nakopnete me nekdo?
> >
>
Odpovedá: Bohac Frantisek
18. 6. 2004 11:46
To je pravda - order by se pouzil az ten druhy, ale IIF() se vztahuje pouze
na jedno pole a ja potebuji vsechny pole setridit podle jednoho ...
Tohle by bylo v poradku, kdyby se neignorovalo to prvni setrideni ...
SELECT jmeno, sto_vysl
FROM lide
where sto_vysl >0
order by sto_vysl
union
SELECT jmeno, sto_vysl
FROM lide
where sto_vysl <=0
order by sto_vysl desc;
Vi nekdo jak na to? Da se to nejak udelat v ramci SQL dotazu na Accessu?
Dekuji vsem za dosavadni informace.
F.
----- Original Message -----
From: "Lstiburek Pavel" <lstiburek@ceb.cz>
> No myslim si toto nebude pracovat klauzule ORDER by se,
> vztahuje vzdy na cely resultset. On ji Access si dovoli
> pouzit dvakrat, ale zabere pouze ta druha.
> Lepsi bude asi vyraz s IIF(..)
Odpovedá: petr palicka
18. 6. 2004 12:04
> SELECT jmeno, sto_vysl
> FROM lide
> where sto_vysl >0
>
> union
>
> SELECT jmeno, sto_vysl
> FROM lide
> where sto_vysl <=0
order by abs(sto_vysl)
^^^
tohle by neslo? strilim od boku
nutno vyzkouset!
peca
Odpovedá: Zalesak Tomas
18. 6. 2004 12:24
> potreboval bych, v selectu v databazi Accessu udelat to, aby
> mi vyjely prvni hodnoty kladne vzestupne a pak zaporne:
>
> 10
> 40
> 55
> 70
> 80
> -2
> -14
> -25
>
> Jde to nejak udelat pres SQL ?
SELECT hodnota
FROM tabulka
ORDER BY SIGN(hodnota) DESC, ABS(hodnota)
Tomas Zalesak
Odpovedá: Bohac Frantisek
18. 6. 2004 13:16
fce SIGN vyzadovala nejakou DLL knihovnu, coz neni vhodne (musi to bezet na
standardni instalaci MS JET+DAO), tak jsem to vyresil s pomoci IIF v
klauzuli ORDER BY, jak rikal Pavel Lstiburek:
SELECT jmeno, sto_vysl
FROM lide
WHERE sto_vysl <> null
ORDER BY IIF(sto_vysl <1,1,0), sto_vysl;
Vsem dekuji za pomoc a preji hezky vikend.
S pozdravem
Frantisek Bohac
----- Original Message -----
From: "Zalesak Tomas" <tomas.zalesak@lcs.cz>
> ORDER BY SIGN(hodnota) DESC, ABS(hodnota)